all: ohsm
	
ohsm: getopt.o parse_alloc_file.o parse_reloc_file.o parse_device_file.o validate.o dev_topology.o debug.o 
	gcc -o ohsm getopt.o parse_alloc_file.o parse_reloc_file.o parse_device_file.o validate.o dev_topology.o debug.o `xml2-config --cflags --libs` -ldevmapper

getopt.o: getopt.c device_topology.o ../include/ohsm.h ohsm_u.h
	gcc -c getopt.c `xml2-config --cflags --libs` -ldevmapper

device_topology.o: dev_topology.c ../include/ohsm.h ohsm_u.h
	gcc -c dev_topology.c `xml2-config --cflags --libs` -ldevmapper

parse_alloc_file.o: parse_alloc_file.c ../include/ohsm.h ohsm_u.h
	gcc -c parse_alloc_file.c `xml2-config --cflags --libs` -ldevmapper

parse_reloc_file.o: parse_reloc_file.c ../include/ohsm.h ohsm_u.h
	gcc -c parse_reloc_file.c `xml2-config --cflags --libs` -ldevmapper

parse_device_file.o: parse_device_file.c ../include/ohsm.h ohsm_u.h
	gcc -c parse_device_file.c `xml2-config --cflags --libs` -ldevmapper

validate.o: validate.c ../include/ohsm.h ohsm_u.h
	gcc -c validate.c `xml2-config --cflags --libs` -ldevmapper

debug.o: debug.c ../include/ohsm.h ohsm_u.h
	gcc -c debug.c `xml2-config --cflags --libs` -ldevmapper

clean:
	-rm ohsm getopt.o parse_alloc_file.o parse_reloc_file.o parse_device_file.o validate.o debug.o
